Platform Explorer / Nuxeo Platform 2023.22

Component org.nuxeo.ecm.platform.forms.layouts.webapp

Resolution Order

679
The resolution order represents the order in which this component has been resolved by the Nuxeo Runtime framework.
You can influence this order by adding "require" tags in your component declaration, to make sure it is resolved after another component.

Contributions

XML Source

<?xml version="1.0"?>

<component name="org.nuxeo.ecm.platform.forms.layouts.webapp">

  <extension target="org.nuxeo.ecm.platform.forms.layout.WebLayoutManager"
    point="widgettypes">

    <widgetType name="info_box">
      <configuration>
        <sinceVersion>6.0</sinceVersion>
        <title>Info box</title>
        <description>
          <p>
            This widget displays common information about the document, like
            creation date, creator, version, state, contributors, ...
          </p>
        </description>
        <categories>
          <category>summary</category>
        </categories>
        <supportedModes>
          <mode>view</mode>
        </supportedModes>
        <!-- no configurable properties -->
      </configuration>
      <handler-class>
        org.nuxeo.ecm.platform.forms.layout.facelets.plugins.TemplateWidgetTypeHandler
      </handler-class>
      <property name="template">
        /widgets/info_box_widget_template.xhtml
      </property>
    </widgetType>

    <widgetType name="extendedFile">
      <configuration>
        <sinceVersion>7.3</sinceVersion>
        <title>Extended File</title>
        <description>
          <p>
            The file widget displays a file uploader/editor in create or edit
            mode, with additional message tag for errors, and a link to the file
            in other modes.
          </p>
          <p>
            Widgets using this type can provide properties accepted on a
            &lt;nxu:inputFile /&gt; tag in create or edit mode, and properties
            accepted on a &lt;nxu:outputFile /&gt; tag in other modes.
          </p>
        </description>
        <categories>
          <category>configuration_not_ready</category>
        </categories>
        <supportedModes>
          <mode>edit</mode>
          <mode>view</mode>
        </supportedModes>
        <fields>
          <list>false</list>
          <complex>false</complex>
          <supportedTypes>
            <type>blob</type>
          </supportedTypes>
        </fields>
        <properties>
          <layouts mode="view">
            <layout name="file_widget_type_properties_view">
              <rows>
                <row>
                  <widget category="widgetTypeConf">file_downloadLabel</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">file_iconRendered</widget>
                </row>
              </rows>
            </layout>
          </layouts>
          <layouts mode="edit">
            <layout name="file_widget_type_properties_edit">
              <rows>
                <row>
                  <widget category="widgetTypeConf">required</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">file_downloadLabel</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">file_iconRendered</widget>
                </row>
              </rows>
            </layout>
          </layouts>
        </properties>
      </configuration>
      <property name="template">/widgets/extended_file_widget.xhtml</property>
    </widgetType>

  </extension>

  <extension target="org.nuxeo.ecm.platform.forms.layout.WebLayoutManager"
    point="widgets">

    <widget name="nature" type="suggestOneDirectory">
      <labels>
        <label mode="any">label.dublincore.nature</label>
      </labels>
      <translated>true</translated>
      <fields>
        <field>dc:nature</field>
      </fields>
      <widgetModes>
        <mode value="view_summary">#{empty layoutValue.dc.nature?'hidden':'view'}</mode>
      </widgetModes>
      <properties mode="any">
        <property name="width">100%</property>
        <property name="minChars">0</property>
        <property name="hideHelpLabel">true</property>
        <property name="directoryName">nature</property>
        <property name="localize">true</property>
      </properties>
    </widget>

    <widget name="subjects" type="suggestManyDirectory">
      <labels>
        <label mode="any">label.dublincore.subject</label>
      </labels>
      <helpLabels>
        <label mode="edit">label.dublincore.subjects.info</label>
      </helpLabels>
      <translated>true</translated>
      <fields>
        <field>dc:subjects</field>
      </fields>
      <widgetModes>
        <mode value="view_summary">#{empty layoutValue.dc.subjects?'hidden':'view'}</mode>
      </widgetModes>
      <properties mode="any">
        <property name="width">100%</property>
        <property name="dbl10n">true</property>
        <property name="minChars">0</property>
        <property name="hideHelpLabel">true</property>
        <property name="directoryName">l10nsubjects</property>
      </properties>
    </widget>

    <widget name="rights" type="text">
      <labels>
        <label mode="any">label.dublincore.rights</label>
      </labels>
      <translated>true</translated>
      <fields>
        <field>dc:rights</field>
      </fields>
      <widgetModes>
        <mode value="view_summary">#{empty layoutValue.dc.rights?'hidden':'view'}</mode>
      </widgetModes>
      <properties widgetMode="edit">
        <property name="styleClass">dataInputText</property>
      </properties>
    </widget>

    <widget name="source" type="text">
      <labels>
        <label mode="any">label.dublincore.source</label>
      </labels>
      <translated>true</translated>
      <fields>
        <field>dc:source</field>
      </fields>
      <widgetModes>
        <mode value="view_summary">#{empty layoutValue.dc.source?'hidden':'view'}</mode>
      </widgetModes>
      <properties widgetMode="edit">
        <property name="styleClass">dataInputText</property>
      </properties>
    </widget>

    <widget name="coverage" type="suggestOneDirectory">
      <labels>
        <label mode="any">label.dublincore.coverage</label>
      </labels>
      <helpLabels>
        <label mode="edit">label.dublincore.coverage.info</label>
      </helpLabels>
      <translated>true</translated>
      <fields>
        <field>dc:coverage</field>
      </fields>
      <widgetModes>
        <mode value="view_summary">#{empty layoutValue.dc.coverage?'hidden':'view'}</mode>
      </widgetModes>
      <properties mode="any">
        <property name="width">100%</property>
        <property name="dbl10n">true</property>
        <property name="minChars">0</property>
        <property name="hideHelpLabel">true</property>
        <property name="directoryName">l10ncoverage</property>
      </properties>
    </widget>

    <widget name="created" type="datetime">
      <labels>
        <label mode="any">label.dublincore.created</label>
      </labels>
      <translated>true</translated>
      <fields>
        <field>dc:created</field>
      </fields>
      <widgetModes>
        <mode value="view_summary">#{empty layoutValue.dc.created?'hidden':'view'}</mode>
        <mode value="any">view</mode>
        <mode value="pdf">pdf</mode>
      </widgetModes>
      <properties widgetMode="any">
        <property name="pattern">#{nxu:basicDateAndTimeFormatter()}</property>
      </properties>
    </widget>

    <widget name="modified" type="datetime">
      <labels>
        <label mode="any">label.dublincore.modified</label>
      </labels>
      <translated>true</translated>
      <fields>
        <field>dc:modified</field>
      </fields>
      <widgetModes>
        <mode value="view_summary">#{empty layoutValue.dc.modified?'hidden':'view'}</mode>
        <mode value="any">view</mode>
        <mode value="pdf">pdf</mode>
      </widgetModes>
      <properties widgetMode="any">
        <property name="pattern">#{nxu:basicDateAndTimeFormatter()}</property>
      </properties>
    </widget>

    <widget name="format" type="text">
      <labels>
        <label mode="any">label.dublincore.format</label>
      </labels>
      <translated>true</translated>
      <fields>
        <field>dc:format</field>
      </fields>
      <widgetModes>
        <mode value="view_summary">#{empty layoutValue.dc.format?'hidden':'view'}</mode>
      </widgetModes>
      <properties widgetMode="edit">
        <property name="styleClass">dataInputText</property>
      </properties>
    </widget>

    <widget name="language" type="text">
      <labels>
        <label mode="any">label.dublincore.language</label>
      </labels>
      <translated>true</translated>
      <fields>
        <field>dc:language</field>
      </fields>
      <widgetModes>
        <mode value="view_summary">#{empty layoutValue.dc.language?'hidden':'view'}</mode>
      </widgetModes>
      <properties widgetMode="edit">
        <property name="styleClass">dataInputText</property>
      </properties>
    </widget>

    <widget name="expired" type="datetime">
      <labels>
        <label mode="any">label.dublincore.expired</label>
      </labels>
      <translated>true</translated>
      <fields>
        <field>dc:expired</field>
      </fields>
      <widgetModes>
        <mode value="view_summary">#{empty layoutValue.dc.expired?'hidden':'view'}</mode>
      </widgetModes>
      <properties widgetMode="any">
        <property name="pattern">#{nxu:basicDateFormatter()}</property>
      </properties>
      <properties widgetMode="edit">
        <property name="format">#{nxu:basicDateFormatter()}</property>
      </properties>
    </widget>

    <widget name="author" type="template">
      <labels>
        <label mode="any">label.dublincore.creator</label>
      </labels>
      <helpLabels>
        <label mode="edit">label.dublincore.author.info</label>
      </helpLabels>
      <translated>true</translated>
      <fields>
        <field>dc:creator</field>
      </fields>
      <widgetModes>
        <mode value="view_summary">#{empty layoutValue.dc.creator?'hidden':'view'}</mode>
        <mode value="any">view</mode>
        <mode value="pdf">pdf</mode>
      </widgetModes>
      <properties mode="any">
        <property name="template">
          /widgets/single_user_widget_template.xhtml
        </property>
      </properties>
    </widget>

    <widget name="contributors" type="template">
      <labels>
        <label mode="any">label.dublincore.contributors</label>
      </labels>
      <helpLabels>
        <label mode="edit">label.dublincore.contributors.info</label>
      </helpLabels>
      <translated>true</translated>
      <fields>
        <field>dc:contributors</field>
      </fields>
      <widgetModes>
        <mode value="view_summary">#{empty layoutValue.dc.contributors?'hidden':'view'}
        </mode>
      </widgetModes>
      <properties mode="any">
        <property name="template">/widgets/contributors_widget.xhtml</property>
      </properties>
      <properties widgetMode="edit">
        <property name="styleClass">dataInputText</property>
      </properties>
    </widget>

    <widget name="lastContributor" type="template">
      <labels>
        <label mode="any">label.dublincore.lastContributor</label>
      </labels>
      <helpLabels>
        <label mode="edit">label.dublincore.lastContributor.info</label>
      </helpLabels>
      <translated>true</translated>
      <fields>
        <field>dc:lastContributor</field>
      </fields>
      <widgetModes>
        <mode value="view_summary">#{empty layoutValue.dc.lastContributor?'hidden':'view'}
        </mode>
        <mode value="any">view</mode>
        <mode value="pdf">pdf</mode>
      </widgetModes>
      <properties mode="any">
        <property name="template">
          /widgets/single_user_widget_template.xhtml
        </property>
      </properties>
    </widget>

    <widget name="title" type="text">
      <labels>
        <label mode="any">title</label>
      </labels>
      <translated>true</translated>
      <fields>
        <field>dc:title</field>
      </fields>
      <widgetModes>
        <mode value="view_summary">#{empty layoutValue.dc.title?'hidden':'view'}</mode>
      </widgetModes>
      <properties widgetMode="edit">
        <property name="required">true</property>
        <property name="styleClass">dataInputText</property>
      </properties>
    </widget>

    <widget name="description" type="textarea">
      <labels>
        <label mode="any">description</label>
      </labels>
      <translated>true</translated>
      <fields>
        <field>dc:description</field>
      </fields>
      <widgetModes>
        <mode value="view_summary">#{empty layoutValue.dc.description?'hidden':'view'}
        </mode>
      </widgetModes>
      <properties widgetMode="edit">
        <property name="styleClass">dataInputText</property>
      </properties>
    </widget>

    <widget name="file" type="extendedFile">
      <labels>
        <label mode="any">label.file.content</label>
      </labels>
      <translated>true</translated>
      <fields>
        <field>file:content</field>
        <field>file:content/name</field>
      </fields>
    </widget>

    <widget name="note" type="richtext_with_mimetype">
      <labels>
        <label mode="any">note</label>
      </labels>
      <translated>true</translated>
      <fields>
        <field>note:note</field>
        <field>note:mime_type</field>
      </fields>
    </widget>

    <widget name="files" type="template">
      <labels>
        <label mode="any">label.files.files</label>
      </labels>
      <translated>true</translated>
      <fields>
        <field schema="files">files</field>
      </fields>
      <properties mode="any">
        <property name="template">
          /widgets/files_list_widget_template.xhtml
        </property>
      </properties>
      <properties widgetMode="edit">
        <property name="diff">true</property>
      </properties>
      <subWidgets>
        <widget name="file" type="template">
          <labels>
            <label mode="any"></label>
          </labels>
          <fields>
            <field>file</field>
            <field>file/name</field>
          </fields>
          <properties mode="any">
            <property name="template">
              /widgets/extended_subfile_widget.xhtml
            </property>
          </properties>
          <properties widgetMode="edit">
            <property name="required">true</property>
          </properties>
        </widget>
      </subWidgets>
    </widget>

    <widget name="header_title_and_permlink" type="title_and_permlink">
      <fields>
        <field></field>
      </fields>
      <labels>
        <label mode="any"></label>
      </labels>
    </widget>

    <widget name="header_description" type="textarea">
      <widgetModes>
        <mode value="any">
          #{currentDocument.folder==false or empty
          currentDocument.dublincore.description ?'hidden':mode}
        </mode>
      </widgetModes>
      <fields>
        <field>dc:description</field>
      </fields>
      <labels>
        <label mode="any"></label>
      </labels>
      <properties mode="any">
        <property name="styleClass">
          currentDocumentDescription quote
        </property>
      </properties>
    </widget>

    <widget name="bulk_collections" type="multipleDocumentsSuggestion">
      <labels>
        <label mode="any">label.collections</label>
      </labels>
      <translated>true</translated>
      <fields>
        <field>contextData['bulk_collections']</field>
      </fields>
      <properties widgetMode="any">
        <property name="minChars">0</property>
        <property name="hideHelpLabel">true</property>
        <property name="restoreSeamCtx">false</property>
        <property name="placeholder">label.addToCollection.collection.placeHolder</property>
        <property name="operationId">Collection.Suggestion</property>
        <property name="selectionFormatter">formatSelectedCollection</property>
        <property name="suggestionFormatter">formatSuggestedCollection</property>
        <property name="documentSchemas">dublincore,common</property>
      </properties>
    </widget>

    <widget name="bulk_tags" type="select_tags">
      <labels>
        <label mode="any">label.search.tagSearch</label>
      </labels>
      <translated>true</translated>
      <fields>
        <field>contextData['bulk_tags']</field>
      </fields>
      <properties widgetMode="edit">
        <property name="canSelectNewTag">true</property>
        <property name="placeholder">
          #{messages['label.search.tags.placeholder']}
        </property>
      </properties>
    </widget>

  </extension>

  <extension target="org.nuxeo.ecm.platform.forms.layout.WebLayoutManager"
    point="layouts">

    <layout name="heading">
      <templates>
        <template mode="any">/layouts/layout_default_template.xhtml
        </template>
      </templates>
      <rows>
        <row>
          <widget>title</widget>
        </row>
        <row>
          <widget>description</widget>
        </row>
      </rows>
    </layout>

    <layout name="dublincore">
      <templates>
        <template mode="any">/layouts/layout_default_template.xhtml
        </template>
      </templates>
      <rows>
        <row>
          <widget>nature</widget>
        </row>
        <row>
          <widget>subjects</widget>
        </row>
        <row>
          <widget>rights</widget>
        </row>
        <row>
          <widget>source</widget>
        </row>
        <row>
          <widget>coverage</widget>
        </row>
        <row>
          <widget>created</widget>
        </row>
        <row>
          <widget>modified</widget>
        </row>
        <row>
          <widget>format</widget>
        </row>
        <row>
          <widget>language</widget>
        </row>
        <row>
          <widget>expired</widget>
        </row>
        <row>
          <widget>author</widget>
        </row>
        <row>
          <widget>contributors</widget>
        </row>
        <row>
          <widget>lastContributor</widget>
        </row>
      </rows>

    </layout>

    <layout name="file">
      <templates>
        <template mode="any">/layouts/layout_default_template.xhtml
        </template>
      </templates>
      <rows>
        <row>
          <widget>file</widget>
        </row>
      </rows>
    </layout>

    <layout name="note">
      <templates>
        <template mode="any">/layouts/layout_default_template.xhtml
        </template>
      </templates>
      <rows>
        <row>
          <widget>note</widget>
        </row>
      </rows>
    </layout>

    <layout name="files">
      <templates>
        <template mode="any">/layouts/layout_default_template.xhtml
        </template>
      </templates>
      <rows>
        <row>
          <widget>files</widget>
        </row>
      </rows>
    </layout>

    <layout name="document_header">
      <templates>
        <template mode="any">/layouts/layout_div_template.xhtml</template>
      </templates>
      <rows>
        <row>
          <widget>header_title_and_permlink</widget>
        </row>
        <row>
          <widget>header_description</widget>
        </row>
      </rows>
    </layout>


    <layout name="dndEdit">
      <templates>
        <template mode="any">/layouts/layout_default_template.xhtml
        </template>
      </templates>
      <rows>
        <row>
          <widget>nature</widget>
        </row>
        <row>
          <widget>subjects</widget>
        </row>
        <row>
          <widget>rights</widget>
        </row>
        <row>
          <widget>source</widget>
        </row>
        <row>
          <widget>coverage</widget>
        </row>
        <row>
          <widget>format</widget>
        </row>
        <row>
          <widget>language</widget>
        </row>
        <row>
          <widget>expired</widget>
        </row>
      </rows>

    </layout>

    <layout name="bulkEdit@edit">
      <templates>
        <template mode="any">/layouts/layout_bulkedit_template.xhtml
        </template>
      </templates>
      <rows>
        <row>
          <widget>bulk_tags</widget>
        </row>
        <row>
          <widget>bulk_collections</widget>
        </row>
        <row>
          <widget>nature</widget>
        </row>
        <row>
          <widget>subjects</widget>
        </row>
        <row>
          <widget>coverage</widget>
        </row>
        <row>
          <widget>expired</widget>
        </row>
        <row>
          <widget>rights</widget>
        </row>
        <row>
          <widget>source</widget>
        </row>
        <row>
          <widget>format</widget>
        </row>
        <row>
          <widget>language</widget>
        </row>
      </rows>
    </layout>

    <layout name="bulkImport@create">
      <templates>
        <template mode="any">/layouts/layout_default_template.xhtml</template>
      </templates>
      <rows>
        <row>
          <widget>bulk_tags</widget>
        </row>
        <row>
          <widget>bulk_collections</widget>
        </row>
        <row>
          <widget>nature</widget>
        </row>
        <row>
          <widget>subjects</widget>
        </row>
        <row>
          <widget>coverage</widget>
        </row>
      </rows>
    </layout>
  </extension>

</component>